package Libs.Dados.Objetos
{
	import mx.collections.ArrayCollection;
	[RemoteClass(alias="Neturion.Dados.Pessoa")]	
	public class Pessoa
	{
		private var _pessoaId:int;
        private var _nomeRazaoSocial:String;
        private var _apelidoFantasia:String;
        private var _nomeReduzido:String;
        private var _enumTipoSexo:int;
        private var _cpfCnpj:String;
        private var _homePage:String;
        private var _midia:Libs.Dados.Objetos.Midia;
        private var _enumTipoPessoa:int;
        private var _dataCadastro:Date;
        private var _inicioVigencia:Date;
        private var _fimVigencia:Date;
        private var _dataNascimentoAbertura:Date;
        private var _enumEscolaridade:int;
        private var _enumEstadoCivil:int;
        private var _observacao:String;
        private var _listaEnderecos:ArrayCollection; 
        private var _listaRegistros:ArrayCollection;
        private var _listaTelefones:ArrayCollection;
        private var _listaEmails:ArrayCollection;
        private var _listaReferenciaPessoas:ArrayCollection; 
        private var _listaContasBanco:ArrayCollection;
        private var _neturionLog:Libs.Dados.Objetos.NeturionLog;
               
		public function Pessoa()
		{
			this._listaEmails=new ArrayCollection();
			this._listaEnderecos=new ArrayCollection();
			this._listaReferenciaPessoas=new ArrayCollection();
			this._listaRegistros=new ArrayCollection();
			this._listaTelefones=new ArrayCollection();
			this._listaContasBanco=new	ArrayCollection();
		}

		public function set PessoaId(value:int):void
        {
            this._pessoaId=value;
        }

        public function set NomeRazaoSocial(value:String):void
        {
            this._nomeRazaoSocial=value;
        }

        public function set ApelidoFantasia(value:String):void
        {
            this._apelidoFantasia=value;
        }

        public function set NomeReduzido(value:String):void
        {
            this._nomeReduzido=value;
        }
        
        public function set EnumTipoSexo(value:int):void
        {
            this._enumTipoSexo=value;
        }

        public function set CpfCnpj(value:String):void
        {
            this._cpfCnpj=value;
        }

        public function set HomePage(value:String):void
        {
            this._homePage=value;
        }

        public function set Midia(value:Libs.Dados.Objetos.Midia):void
        {
            this._midia=value;
        }

        public function set EnumTipoPessoa(value:int):void
        {
            this._enumTipoPessoa=value;
        }

        public function set EnumEstadoCivil(value:int):void
        {
            this._enumEstadoCivil=value;
        }

        public function set DataCadastro(value:Date):void
        {
            this._dataCadastro=value;
        }

        public function set InicioVigencia(value:Date):void
        {
            this._inicioVigencia=value;
        }

        public function set FimVigencia(value:Date):void
        {
            this._fimVigencia=value;
        }

        public function set DataNascimentoAbertura(value:Date):void
        {
            this._dataNascimentoAbertura=value;
        }

        public function set EnumEscolaridade(value:int):void
        {
            this._enumEscolaridade=value;
        }

        public function set Observacao(value:String):void
        {
            this._observacao=value;
        }

        public function set ListaEnderecos(value:ArrayCollection):void
        {
            this._listaEnderecos=value;
        }

        public function set ListaRegistros(value:ArrayCollection):void
        {
            this._listaRegistros=value;
        }

        public function set ListaTelefones(value:ArrayCollection):void
        {
            this._listaTelefones=value;
        }

        public function set ListaEmails(value:ArrayCollection):void
        {
            this._listaEmails=value;
        }

        public function set ListaReferenciaPessoas(value:ArrayCollection):void
        {
            this._listaReferenciaPessoas=value;
        }
        
        public function set ListaContasBanco(value:ArrayCollection):void
        {
            this._listaContasBanco=value;
        }

        public function set NeturionLog(value:Libs.Dados.Objetos.NeturionLog):void
        {
            this._neturionLog=value;
        }

//////////// get ////////////////        
        public function get PessoaId():int
        {
            return this._pessoaId;
        }

        public function get NomeRazaoSocial():String
        {
            return this._nomeRazaoSocial;
        }

        public function get ApelidoFantasia():String
        {
            return this._apelidoFantasia;
        }

        public function get NomeReduzido():String
        {
            return this._nomeReduzido;
        }
        
        public function get EnumTipoSexo():int
        {
            return this._enumTipoSexo;
        }

        public function get CpfCnpj():String
        {
            return this._cpfCnpj;
        }

        public function get HomePage():String
        {
            return this._homePage;
        }

        public function get Midia():Libs.Dados.Objetos.Midia
        {
            return this._midia;
        }

        public function get EnumTipoPessoa():int
        {
            return this._enumTipoPessoa;
        }

        public function get EnumEstadoCivil():int
        {
            return this._enumEstadoCivil;
        }

        public function get DataCadastro():Date
        {
        	var data:Date = null;
        	if (this._dataCadastro != null)
        	{
        		var dia:Number = _dataCadastro.dateUTC; 
	        	var mes:Number = _dataCadastro.monthUTC; 
	        	var ano:Number = _dataCadastro.fullYearUTC;
	        	data = new Date(ano,mes,dia);
        	}
            return this._dataCadastro = data;
        }

        public function get InicioVigencia():Date
        {
        	var data:Date = null;
        	if (this._inicioVigencia != null)
        	{
        		var dia:Number = _inicioVigencia.dateUTC; 
	        	var mes:Number = _inicioVigencia.monthUTC; 
	        	var ano:Number = _inicioVigencia.fullYearUTC;
	        	data = new Date(ano,mes,dia);
        	}
            return this._inicioVigencia = data;
        }

        public function get FimVigencia():Date
        {
        	var data:Date = null;
        	if (this._fimVigencia != null)
        	{
        		var dia:Number = _fimVigencia.dateUTC; 
	        	var mes:Number = _fimVigencia.monthUTC; 
	        	var ano:Number = _fimVigencia.fullYearUTC;
	        	data = new Date(ano,mes,dia);
        	}
            return this._fimVigencia = data;
        }

        public function get DataNascimentoAbertura():Date
        {
        	var data:Date = null;
        	if (this._dataNascimentoAbertura != null)
        	{
        		var dia:Number = _dataNascimentoAbertura.dateUTC; 
	        	var mes:Number = _dataNascimentoAbertura.monthUTC; 
	        	var ano:Number = _dataNascimentoAbertura.fullYearUTC;
	        	data = new Date(ano,mes,dia);
        	}
            return this._dataNascimentoAbertura = data;
        }

        public function get EnumEscolaridade():int
        {
            return this._enumEscolaridade;
        }

        public function get Observacao():String
        {
            return this._observacao;
        }

        public function get ListaEnderecos():ArrayCollection
        {
            return this._listaEnderecos;
        }

        public function get ListaRegistros():ArrayCollection
        {
            return this._listaRegistros;
        }

        public function get ListaTelefones():ArrayCollection
        {
            return this._listaTelefones;
        }

        public function get ListaEmails():ArrayCollection
        {
            return this._listaEmails;
        }

        public function get ListaReferenciaPessoas():ArrayCollection
        {
            return this._listaReferenciaPessoas;
        }
        
        public function get ListaContasBanco():ArrayCollection
        {
            return this._listaContasBanco;
        }

        public function get NeturionLog():Libs.Dados.Objetos.NeturionLog
        {
            return this._neturionLog;
        }
	}
}